﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using vudu.Logica.Fachada;
using vudu.ClasesDominio;
using vudu.Presentacion.Contrato.VU_12_Obtener_Reportes_de_Material;
using vudu.Presentacion.Presentador.VU_12_Obtener_Reportes_de_Material;

namespace vudu.Presentacion.Vista.VU_12_Obtener_Reportes_de_Material
{
    public partial class ConsultaReportesMateria:  System.Web.UI.Page, IContratoConsultarMateriasProfesorReporte
    {
        private PresentadorConsultarReportesMaterial _presentador;

        protected void Page_Load(object sender, EventArgs e)
        {
            string miRol = (string)Session["TipoRol"];

            if (miRol != "Profesor")
                Response.Redirect("../VU_15 Gestion de Acceso/InicioSistema.aspx");
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            if (!IsPostBack)
            {

                _presentador = new PresentadorConsultarReportesMaterial(fachada, this);
                _presentador.ConsultarMaterias();
            }

        }

        public GridView GridMateriasDictadas
        {
            get { return GridViewMateriasDictadas; }
        }

       
        public Label Error
        {
            get { return Label1; }
        }

        

        protected void GridViewMateriasDictadas_SelectedIndexChange(object sender, EventArgs e)
        {
            GridViewRow row = GridMateriasDictadas.SelectedRow;
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            _presentador = new PresentadorConsultarReportesMaterial(fachada, this);
            Session["materiaElegida"] = LlenarCamposSeleccion(row);
            Response.Redirect("ConsultarReportesMateriaGrid.aspx");

        }

        protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            GridViewRow row = GridMateriasDictadas.SelectedRow;
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            _presentador = new PresentadorConsultarReportesMaterial(fachada, this);
             Session["materiaElegida"] = LlenarCamposSeleccion(row);
            Response.Redirect("ConsultarReporteMateriaGrafico.aspx");
        }


        public SeccionMateria LlenarCamposSeleccion(GridViewRow row)
        {
            SeccionMateria miMateria = new SeccionMateria();
            miMateria.Materia.Nombre = row.Cells[2].Text;
            miMateria.Materia.Codigo = Convert.ToInt32(row.Cells[4].Text);
            miMateria.IdSeccionMateria = Convert.ToInt32(row.Cells[3].Text);
            return miMateria;
        }
       
        protected void GridViewMateriasDictadas_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridMateriasDictadas.PageIndex = e.NewPageIndex;
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            _presentador = new PresentadorConsultarReportesMaterial(fachada, this);
            _presentador.ConsultarMaterias();

        }
    
    
    }



}